package com.example.project.service;

import java.util.List;

import com.example.project.entity.IssueRelation;

/**
 * 问题关联关系Service接口
 * 
 * @author ruoyi
 * @date 2025-11-24
 */
public interface IssueRelationService {
    
    /**
     * 查询问题关联关系
     * 
     * @param id 问题关联关系ID
     * @return 问题关联关系
     */
    public IssueRelation selectIssueRelationById(Long id);

    /**
     * 查询问题关联关系列表
     * 
     * @param issueRelation 问题关联关系
     * @return 问题关联关系集合
     */
    public List<IssueRelation> selectIssueRelationList(IssueRelation issueRelation);

    /**
     * 根据问题ID查询关联关系列表
     * 
     * @param issueId 问题ID
     * @return 关联关系列表
     */
    public List<IssueRelation> selectIssueRelationsByIssueId(Long issueId);

    /**
     * 删除问题关联关系信息
     * 
     * @param issueRelation 问题关联关系ID
     * @return 结果
     */
    public int deleteIssueRelationById(IssueRelation issueRelation);

    /**
     * 添加问题关联
     * 
     * @param issueId 源问题ID
     * @param relatedIssueId 关联问题ID
     * @param relationType 关联类型
     * @param description 关联描述
     * @param createBy 创建人
     * @return 结果
     */
    public int addIssueRelation(Long issueId, Long relatedIssueId, String relationType, String description, String createBy);

	public List<IssueRelation> queryIssueRelationListByIssueId(Long issueId);

	public IssueRelation findRelationByFromIdAndToId(Long issueFromId, Long issueToId);
}